﻿// Type: D2L.Extensibility.AuthSdk.ID2LUserContext
// Assembly: D2L.Extensibility.AuthSdk, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null
// MVID: B2FBA42B-591C-474F-A782-6FF215FEDFB9
// Assembly location: C:\Users\leandro.perdizo\Desktop\D2L.Extensibility.AuthSdk.dll

using System;
using System.Collections.Generic;

namespace D2L.Extensibility.AuthSdk
{
  public interface ID2LUserContext
  {
    long ServerSkewMillis { get; set; }

    Uri CreateAuthenticatedUri(string path, string httpMethod);

    Uri CreateAuthenticatedUri(Uri fullUrl, string httpMethod);

    IEnumerable<Tuple<string, string>> CreateAuthenticatedTokens(string path, string httpMethod);

    IEnumerable<Tuple<string, string>> CreateAuthenticatedTokens(Uri fullUrl, string httpMethod);

    RequestResult InterpretResult(D2LWebException exceptionWrapper);

    UserContextProperties SaveUserContextProperties();
  }
}
